#ifndef WINDOW_H
#define WINDOW_H

#include <QWindow>
#include <QOpenGLFunctions>

class QOpenGLContext;
class QExposeEvent;
class QOpenGLShaderProgram;
class QOpenGLBuffer;

class Window : public QWindow, public QOpenGLFunctions
{
    Q_OBJECT
public:
    Window();
    virtual ~Window();
    void initialize();
    void render();
    void exposeEvent(QExposeEvent *event);
signals:
    
public slots:
private:
    QOpenGLContext *m_context;
    QOpenGLShaderProgram *m_program;
    QOpenGLBuffer *m_buffer;
};

#endif // WINDOW_H
